package action.operate;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;

import bean.Login;
import bean.Operation;

/*
 * 登录操作
 */
public class LoginCheck {
	public String execute() {
		// 得到HttpSession方法
		HttpSession session = ServletActionContext.getRequest().getSession();
		// 得到HttpServletRequest方法
		HttpServletRequest request = ServletActionContext.getRequest();
		// session生命周期，单位秒
		int sessionTime = 600;

		// 获取页面输入的帐号和密码
		String username = request.getParameter("username");
		String password = request.getParameter("password");

		// 实例化操作类，并且调用登录方法
		Operation operation = new Operation();
		// 判断是否登录成功
		Login login = operation.login(username, password);
		
		// 如果login为true，则表示登录成功
		if (login.getId()!=0) {
			// 在session对象中添加一对键值对
			session.setAttribute("username", username);
			// 获取用户ID
			session.setAttribute("id", login.getId());
			// 设置session生命周期
			session.setMaxInactiveInterval(sessionTime);
			// 若如果登陆成功，则request对象中login键的值为true
			session.setAttribute("login", "true");
			return "home";
		} else {
			// 若如果帐号密码错误，则request对象中login键的值为error
			request.setAttribute("login", "false");
			return "login";
		}
	}
}
